/*
 * Color4f.hpp
 *
 *  Created on: Mar 20, 2014
 *      Author: knuke
 */

#ifndef COLOR4F_HPP_
#define COLOR4F_HPP_

#include <array>

namespace gengine
{

  class Color4f
  {
  public:
    Color4f();
    Color4f(std::array<float, 4> data);
    Color4f(float* data);
    virtual ~Color4f();

    float getAlpha() const;
    void setAlpha(float alpha);
    float getBlue() const;
    void setBlue(float blue);
    float getGreen() const;
    void setGreen(float green);
    float getRed() const;
    void setRed(float red);
    const std::array<float, 4>& getData() const;
    void setData(const std::array<float, 4>& data);

  private:
    std::array<float, 4> data_;
  };

} /* namespace gengine */

#endif /* COLOR4F_HPP_ */
